home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1995 October / EnigmA AMIGA RUN 01 (1995)(G.R. Edizioni)(IT)[!][issue 1995-10][Aminet 7].iso / Aminet / dev / gui / BGUI11c.lha / include / libraries / bgui.i < prev   
Text File  |  1995-04-15  |  46KB  |  1,237 lines

  1.     IFND        LIBRARIES_BGUI_I
  2. LIBRARIES_BGUI_I        SET     1
  3. **
  4. **      $VER: libraries/bgui.i 38.13 (15.4.95)
  5. **      ASM header for the bgui.library.
  6. **
  7. **      bgui.library structures and constants.
  8. **
  9. **      (C) Copyright 1993-1995 Jaba Development.
  10. **      (C) Copyright 1993-1995 Jan van den Baard.
  11. **      All Rights Reserved.
  12. **
  13.  
  14.         IFND    __m68
  15.  
  16.         IFND    EXEC_TYPES_I
  17.         INCLUDE "exec/types.i"
  18.         ENDC
  19.  
  20.         IFND    INTUITION_CLASSES_I
  21.         INCLUDE "intuition/classes.i"
  22.         ENDC
  23.  
  24.         IFND    INTUITION_CLASSUSR_I
  25.         INCLUDE "intuition/classusr.i"
  26.         ENDC
  27.  
  28.         IFND    INTUITION_IMAGECLASS_I
  29.         INCLUDE "intuition/imageclass.i"
  30.         ENDC
  31.  
  32.         IFND    INTUITION_GADGETCLASS_I
  33.         INCLUDE "intuition/gadgetclass.i"
  34.         ENDC
  35.  
  36.         IFND    INTUITION_CGHOOKS_I
  37.         INCLUDE "intuition/cghooks.i"
  38.         ENDC
  39.  
  40.         IFND    LIBRARIES_COMMODITIES_I
  41.         INCLUDE "libraries/commodities.i"
  42.         ENDC
  43.  
  44.         IFND    LIBRARIES_GADTOOLS_I
  45.         INCLUDE "libraries/gadtools.i"
  46.         ENDC
  47.  
  48.         IFND UTILITY_TAGITEM_I
  49.         INCLUDE "utility/tagitem.i"
  50.         ENDC
  51.  
  52.         ENDC    * _m68
  53.  
  54. *****************************************************************************
  55. **
  56. **      The attribute definitions in this header are all followed by
  57. **      a small comment. This comment can contain the following things:
  58. **
  59. **      I        - Attribute can be set with OM_NEW
  60. **      S        - Attribute can be set with OM_SET
  61. **      G        - Attribute can be read with OM_GET
  62. **      N        - Setting this attribute triggers a notification.
  63. **      U        - Attribute can be set with OM_UPDATE.
  64. **      PRIVATE! - Like it says: Private. Do not use this attribute.
  65. **
  66.  
  67. *****************************************************************************
  68. **
  69. **      Miscellanious library definitions.
  70. **
  71. BGUINAME        MACRO
  72.                 DC.B    'bgui.library',0
  73.                 ENDM
  74.  
  75. BGUIVERSION     EQU     37
  76.  
  77. * Added to avoid problems with multiple defines.
  78.  
  79.    STRUCTURE    bguiMethodID,0
  80.         ULONG   bmi_MethodID
  81.         LABEL   MethodID_SIZEOF
  82.  
  83. ******************************************************************************
  84. **
  85. **      BGUI_GetClassPtr() and BGUI_NewObjectA() class ID's.
  86. **
  87. BGUI_LABEL_IMAGE        EQU     0
  88. BGUI_FRAME_IMAGE        EQU     1
  89. BGUI_VECTOR_IMAGE       EQU     2
  90. ** 3 until 10 reserved. **
  91. BGUI_BASE_GADGET        EQU     11
  92. BGUI_GROUP_GADGET       EQU     12
  93. BGUI_BUTTON_GADGET      EQU     13
  94. BGUI_CYCLE_GADGET       EQU     14
  95. BGUI_CHECKBOX_GADGET    EQU     15
  96. BGUI_INFO_GADGET        EQU     16
  97. BGUI_STRING_GADGET      EQU     17
  98. BGUI_PROP_GADGET        EQU     18
  99. BGUI_INDICATOR_GADGET   EQU     19
  100. ** 20 is reserved. **
  101. BGUI_PROGRESS_GADGET    EQU     21
  102. BGUI_SLIDER_GADGET      EQU     22
  103. BGUI_LISTVIEW_GADGET    EQU     23
  104. BGUI_MX_GADGET          EQU     24
  105. BGUI_PAGE_GADGET        EQU     25
  106. BGUI_EXTERNAL_GADGET    EQU     26
  107. BGUI_SEPERATOR_GADGET   EQU     27
  108. ** 28 until 39 reserved. **
  109. BGUI_WINDOW_OBJECT      EQU     40
  110. BGUI_FILEREQ_OBJECT     EQU     41
  111. BGUI_COMMODITY_OBJECT   EQU     42
  112.  
  113. ** Typo
  114. BGUI_SEPARATOR_GADGET   EQU     27
  115.  
  116. ******************************************************************************
  117. **
  118. **      BGUI requester definitions.
  119. **
  120.    STRUCTURE    bguiRequest,0
  121.         ULONG   br_Flags         ; See below.
  122.         APTR    br_Title         ; Requester title.
  123.         APTR    br_GadgetFormat  ; Gadget labels.
  124.         APTR    br_TextFormat    ; Body text format.
  125.         UWORD   br_ReqPos        ; Requester position.
  126.         APTR    br_TextAttr      ; Requester font.
  127.         UBYTE   br_Underscore    ; Underscore indicator.
  128.         STRUCT  br_Reserved0,3   ; Set to 0!
  129.         APTR    br_Screen        ; Requester screen.
  130.         STRUCT  br_Reserved1,5*4 ; Set to 0!
  131.    LABEL bguiRequest_SIZEOF
  132.  
  133. BREQF_CENTERWINDOW      EQU     $0001   ; Center requester on the window.
  134. BREQF_LOCKWINDOW        EQU     $0002   ; Lock the parent window.
  135. BREQF_NO_PATTERN        EQU     $0004   ; Don't use back-fill pattern.
  136. BREQF_XEN_BUTTONS       EQU     $0008   ; Use XEN style buttons.
  137. BREQF_AUTO_ASPECT       EQU     $0010   ; Aspect ratio dependant look.
  138.  
  139. ******************************************************************************
  140. **
  141. **      Tag and method bases.
  142. **
  143. BGUI_TB         EQU     TAG_USER+$000F0000
  144. BGUI_MB         EQU     $000F0000
  145.  
  146. ******************************************************************************
  147. **
  148. **      "frameclass" - BOOPSI framing image.
  149. **
  150. FRM_Type                EQU     BGUI_TB+1       ; ISG--
  151. FRM_CustomHook          EQU     BGUI_TB+2       ; ISG--
  152. FRM_BackFillHook        EQU     BGUI_TB+3       ; ISG--
  153. FRM_Title               EQU     BGUI_TB+4       ; ISG--
  154. FRM_TextAttr            EQU     BGUI_TB+5       ; ISG--
  155. FRM_Flags               EQU     BGUI_TB+6       ; ISG--
  156. FRM_FrameWidth          EQU     BGUI_TB+7       ; --G--
  157. FRM_FrameHeight         EQU     BGUI_TB+8       ; --G--
  158. FRM_BackFill            EQU     BGUI_TB+9       ; ISG--
  159. FRM_EdgesOnly           EQU     BGUI_TB+10      ; ISG--
  160. FRM_Recessed            EQU     BGUI_TB+11      ; ISG--
  161. FRM_CenterTitle         EQU     BGUI_TB+12      ; ISG--
  162. FRM_HighlightTitle      EQU     BGUI_TB+13      ; ISG--
  163. FRM_ThinFrame           EQU     BGUI_TB+14      ; ISG--
  164.  
  165. ** BGUI_TB+15 until BGUI_TB+80 reserved
  166.  
  167. ** Back fill types **
  168. STANDARD_FILL           EQU     0
  169. SHINE_RASTER            EQU     1
  170. SHADOW_RASTER           EQU     2
  171. SHINE_SHADOW_RASTER     EQU     3
  172. FILL_RASTER             EQU     4
  173. SHINE_FILL_RASTER       EQU     5
  174. SHADOW_FILL_RASTER      EQU     6
  175. SHINE_BLOCK             EQU     7
  176. SHADOW_BLOCK            EQU     8
  177.  
  178. ** Flags **
  179. FRF_EDGES_ONLY          EQU     $0001
  180. FRF_RECESSED            EQU     $0002
  181. FRF_CENTER_TITLE        EQU     $0004
  182. FRF_HIGHLIGHT_TITLE     EQU     $0008
  183. FRF_THIN_FRAME          EQU     $0010
  184.  
  185. ** Frame types **
  186. FRTYPE_CUSTOM           EQU     0
  187. FRTYPE_BUTTON           EQU     1
  188. FRTYPE_RIDGE            EQU     2
  189. FRTYPE_DROPBOX          EQU     3
  190. FRTYPE_NEXT             EQU     4
  191. FRTYPE_RADIOBUTTON      EQU     5
  192. FRTYPE_XEN_BUTTON       EQU     6
  193.  
  194. **
  195. **      FRM_RENDER:
  196. **
  197. **      The message packet sent to both the FRM_CustomHook
  198. **      and FRM_BackFillHook routines. Note that this
  199. **      structure is READ-ONLY!
  200. **
  201. **      The hook is called as follows:
  202. **
  203. **              lea     hook,a0         * 'STRUCTURE Hook' pointer
  204. **              lea     image_object,a2 * Object pointer
  205. **              lea     fdraw,a1        * FrameDrawMsg pointer
  206. **              jsr     hookFunc        * Call hook function
  207. **              tst.l   d0              * return code in D0
  208. **
  209. FRM_RENDER      EQU     1       ; Render yourself
  210.  
  211.    STRUCTURE    FrameDrawMsg,0
  212.         ULONG   fdm_MethodID    ; FRM_RENDER
  213.         APTR    fdm_RPort       ; RastPort ready for rendering
  214.         APTR    fdm_DrawInfo    ; All you need to render
  215.         APTR    fdm_Bounds      ; Rendering bounds.
  216.         UWORD   fdm_State       ; See "intuition/imageclass.h"
  217.    LABEL FrameDrawMsg_SIZEOF
  218.  
  219. **
  220. **      FRM_THICKNESS:
  221. **
  222. **      The message packet sent to the FRM_Custom hook.
  223. **      This structure is READ-ONLY!
  224. **
  225. **      The hook is called as follows:
  226. **
  227. **              lea     hook,a0         * 'STRUCTURE Hook' pointer
  228. **              lea     image_object,a2 * Object pointer
  229. **              lea     thick,a1        * ThicknessMsg pointer
  230. **              jsr     hookFunc        * Call hook function
  231. **              tst.l   d0              * return code in D0
  232. **
  233. FRM_THICKNESS   EQU     2       ; Give the frame thickness.
  234.  
  235.    STRUCTURE    ThicknessMsg,0
  236.         ULONG   tm_MethodID             ; FRM_THICKNESS
  237.         UBYTE   tm_ThicknessHorizontal  ; Storage for horizontal
  238.         UBYTE   tm_ThicknessVertical    ; Storage for vertical
  239.         WORD    tm_Thin                 ; Added in V38!
  240.    LABEL        ThicknessMsg_SIZEOF
  241.  
  242. ** Possible hook return codes. **
  243. FRC_OK          EQU     0       ; OK
  244. FRC_UNKNOWN     EQU     1       ; Unknow method
  245.  
  246. ******************************************************************************
  247. **
  248. **      "labelclass" - BOOPSI labeling image.
  249. **
  250. LAB_TextAttr    EQU     BGUI_TB+81      ; ISG--
  251. LAB_Style       EQU     BGUI_TB+82      ; ISG--
  252. LAB_Underscore  EQU     BGUI_TB+83      ; ISG--
  253. LAB_Place       EQU     BGUI_TB+84      ; ISG--
  254. LAB_Label       EQU     BGUI_TB+85      ; ISG--
  255. LAB_Flags       EQU     BGUI_TB+86      ; ISG--
  256. LAB_Highlight   EQU     BGUI_TB+87      ; ISG--
  257. LAB_HighUScore  EQU     BGUI_TB+88      ; ISG--
  258.  
  259. ** BGUI_TB+89 until BGUI_TB+160 reserved
  260.  
  261. ** Flags **
  262. LABF_HIGHLIGHT          EQU     $0001   ; Highlight label
  263. LABF_HIGH_USCORE        EQU     $0002   ; Highlight underscoring
  264.  
  265. ** Label placement **
  266. PLACE_IN        EQU     0
  267. PLACE_LEFT      EQU     1
  268. PLACE_RIGHT     EQU     2
  269. PLACE_ABOVE     EQU     3
  270. PLACE_BELOW     EQU     4
  271.  
  272. ** New methods **
  273. **
  274. **      The IM_EXTENT method is used to find out how many
  275. **      pixels the label extents the relative hitbox in
  276. **      either direction. Normally this method is called
  277. **      by the baseclass.
  278. **
  279. IM_EXTENT       EQU     BGUI_MB+1
  280.  
  281.    STRUCTURE    impExtent,MethodID_SIZEOF  ; IM_EXTENT
  282.         APTR    impex_RPort             ; RastPort
  283.         APTR    impex_Extent            ; Storage for extentions.
  284.         UWORD   impex_LabelSizeWidth    ; Storage width in pixels
  285.         UWORD   impex_LabelSizeHeight   ; Storage height in pixels
  286.         UWORD   impex_Flags             ; See below.
  287.    LABEL        impExtent_SIZEOF
  288.  
  289. EXTF_MAXIMUM    EQU     $0001   ; Request maximum extensions.
  290.  
  291. ** BGUI_MB+2 until BGUI_MB+40 reserved
  292.  
  293. ******************************************************************************
  294. **
  295. **      "vectorclass" - BOOPSI scalable vector image.
  296. **
  297. **      Based on an idea found in the ObjectiveGadTools.library
  298. **      by Davide Massarenti.
  299. **
  300. VIT_VectorArray EQU     BGUI_TB+161     ; ISG--
  301. VIT_BuiltIn     EQU     BGUI_TB+162     ; ISG--
  302. VIT_Pen         EQU     BGUI_TB+163     ; ISG--
  303. VIT_DriPen      EQU     BGUI_TB+164     ; ISG--
  304.  
  305. ** BGUI_TB+165 until BGUI_TB+240 reserved.
  306.  
  307. **
  308. **      Command structure which can contain
  309. **      coordinates, data and command flags.
  310. **
  311.    STRUCTURE    VectorItem,0
  312.         WORD    vi_x            ; X coordinate or data
  313.         WORD    vi_y            ; Y coordinate
  314.         ULONG   vi_Flags        ; See below
  315.    LABEL        VectorItem_SIZEOF
  316.  
  317. ** Flags **
  318. VIF_MOVE        EQU     $00000001       ; Move to vc_x, vc_y
  319. VIF_DRAW        EQU     $00000002       ; Draw to vc_x, vc_y
  320. VIF_AREASTART   EQU     $00000004       ; Start AreaFill at vc_x, vc_y
  321. VIF_AREAEND     EQU     $00000008       ; End AreaFill at vc_x, vc_y
  322. VIF_XRELRIGHT   EQU     $00000010       ; vc_x relative to right edge
  323. VIF_YRELBOTTOM  EQU     $00000020       ; vc_y relative to bottom edge
  324. VIF_SHADOWPEN   EQU     $00000040       ; switch to SHADOWPEN, Move/Draw
  325. VIF_SHINEPEN    EQU     $00000080       ; switch to SHINEPEN, Move/Draw
  326. VIF_FILLPEN     EQU     $00000100       ; switch to FILLPEN, Move/Draw
  327. VIF_TEXTPEN     EQU     $00000200       ; switch to TEXTPEN, Move/Draw
  328. VIF_COLOR       EQU     $00000400       ; switch to color in vc_x
  329. VIF_LASTITEM    EQU     $00000800       ; last element of the element list
  330. VIF_SCALE       EQU     $00001000       ; X & Y are design width & height
  331. VIF_DRIPEN      EQU     $00002000       ; switch to dripen vc_x
  332. VIF_AOLPEN      EQU     $00004000       ; set area outline pen vc_x
  333. VIF_AOLDRIPEN   EQU     $00008000       ; set area outline dripen vc_x
  334. VIF_ENDOPEN     EQU     $00010000       ; end area outline pen
  335.  
  336. ** Built-in images. **
  337. BUILTIN_GETPATH         EQU     1
  338. BUILTIN_GETFILE         EQU     2
  339. BUILTIN_CHECKMARK       EQU     3
  340. BUILTIN_POPUP           EQU     4
  341. BUILTIN_ARROW_UP        EQU     5
  342. BUILTIN_ARROW_DOWN      EQU     6
  343. BUILTIN_ARROW_LEFT      EQU     7
  344. BUILTIN_ARROW_RIGHT     EQU     8
  345.  
  346. ** Design width and heights of the built-in images. **
  347. GETPATH_WIDTH           EQU     20
  348. GETPATH_HEIGHT          EQU     14
  349. GETFILE_WIDTH           EQU     20
  350. GETFILE_HEIGHT          EQU     14
  351. CHECKMARK_WIDTH         EQU     26
  352. CHECKMARK_HEIGHT        EQU     11
  353. POPUP_WIDTH             EQU     15
  354. POPUP_HEIGHT            EQU     13
  355. ARROW_UP_WIDTH          EQU     16
  356. ARROW_UP_HEIGHT         EQU     9
  357. ARROW_DOWN_WIDTH        EQU     16
  358. ARROW_DOWN_HEIGHT       EQU     9
  359. ARROW_LEFT_WIDTH        EQU     10
  360. ARROW_LEFT_HEIGHT       EQU     12
  361. ARROW_RIGHT_WIDTH       EQU     10
  362. ARROW_RIGHT_HEIGHT      EQU     12
  363.  
  364. ******************************************************************************
  365. **
  366. **      "baseclass" - BOOPSI base gadget.
  367. **
  368. **      This is a very important BGUI gadget class. All other gadget classes
  369. **      are sub-classed from this class. It will handle stuff like online
  370. **      help, notification, labels and frames etc. If you want to write a
  371. **      gadget class for BGUI be sure to subclass it from this class. That
  372. **      way your class will automatically inherit the same features.
  373. **
  374. BT_HelpFile     EQU     BGUI_TB+241     ; IS---
  375. BT_HelpNode     EQU     BGUI_TB+242     ; IS---
  376. BT_HelpLine     EQU     BGUI_TB+243     ; IS---
  377. BT_Inhibit      EQU     BGUI_TB+244     ; PRIVATE!
  378. BT_HitBox       EQU     BGUI_TB+245     ; --G--
  379. BT_LabelObject  EQU     BGUI_TB+246     ; -SG--
  380. BT_FrameObject  EQU     BGUI_TB+247     ; -SG--
  381. BT_TextAttr     EQU     BGUI_TB+248     ; -S---
  382. BT_NoRecessed   EQU     BGUI_TB+249     ; -S---
  383. BT_LabelClick   EQU     BGUI_TB+250     ; IS---
  384. BT_HelpText     EQU     BGUI_TB+251     ; IS---
  385.  
  386. ** BGUI_TB+252 until BGUI_TB+320 reserved.
  387.  
  388. ** New methods **
  389. BASE_ADDMAP     EQU     BGUI_MB+41
  390.  
  391. ** Add an object to the maplist notification list. **
  392.    STRUCTURE    bmAddMap,MethodID_SIZEOF
  393.         APTR    bam_Object
  394.         APTR    bam_MapList
  395.    LABEL        bmAddMap_SIZEOF
  396.  
  397. BASE_ADDCONDITIONAL     EQU     BGUI_MB+42
  398.  
  399. ** Add an object to the conditional notification list. **
  400.    STRUCTURE    bmAddConditional,MethodID_SIZEOF
  401.         APTR    bac_Object
  402.         STRUCT  bac_Condition,ti_SIZEOF
  403.         STRUCT  bac_TRUE,ti_SIZEOF
  404.         STRUCT  bac_FALSE,ti_SIZEOF
  405.    LABEL        bmAddConditional_SIZEOF
  406.  
  407. BASE_ADDMETHOD  EQU     BGUI_MB+43
  408.  
  409. ** Add an object to the method notification list. **
  410.    STRUCTURE    bmAddMethod,MethodID_SIZEOF
  411.         APTR    bamtd_Object
  412.         ULONG   bamtd_Flags
  413.         ULONG   bamtd_Size
  414.         ULONG   bamtd_MethodID
  415.    LABEL        bmAddMethod_SIZEOF
  416.  
  417. BAMF_NO_GINFO           EQU     $0001   ; Do not send GadgetInfo.
  418. BAMF_NO_INTERIM         EQU     $0002   ; Skip interim messages.
  419.  
  420. BASE_REMMAP             EQU     BGUI_MB+44
  421. BASE_REMCONDITIONAL     EQU     BGUI_MB+45
  422. BASE_REMMETHOD          EQU     BGUI_MB+46
  423.  
  424. ** Remove an object from a notification list. **
  425.    STRUCTURE    bmRemove,MethodID_SIZEOF
  426.         APTR    bar_Object
  427.    LABEL        bmRemove_SIZEOF
  428.  
  429. BASE_SHOWHELP           EQU     BGUI_MB+47
  430.  
  431. ** Show attached online-help. **
  432.    STRUCTURE    bmShowHelp,MethodID_SIZEOF
  433.         APTR    bsh_Window
  434.         APTR    bsh_Requester
  435.         WORD    bsh_MouseX
  436.         WORD    bsh_MouseY
  437.    LABEL        bmShowHelp_SIZEOF
  438.  
  439. BMHELP_OK       EQU     0       ; OK, no problems.
  440. BMHELP_NOT_ME   EQU     1       ; Mouse not over the object.
  441. BMHELP_FAILURE  EQU     2       ; Showing failed.
  442.  
  443. **
  444. **      The following three methods are used internally to
  445. **      perform infinite-loop checking. Do not use them.
  446. **
  447. BASE_SETLOOP    EQU     BGUI_MB+48
  448. BASE_CLEARLOOP  EQU     BGUI_MB+49
  449. BASE_CHECKLOOP  EQU     BGUI_MB+50
  450.  
  451. ** PRIVATE! Hands off! **
  452. BASE_LEFTEXT    EQU     BGUI_MB+51
  453.  
  454.    STRUCTURE    bmLeftExt,MethodID_SIZEOF
  455.         APTR    bmle_RPort
  456.         UWORD   bmle_Extention
  457.    LABEL        bmLeftExt_SIZEOF
  458.  
  459. BASE_ADDHOOK    EQU     BGUI_MB+52
  460.  
  461. ** Add a hook to the hook-notification list. **
  462.    STRUCTURE    bmAddHook,MethodID_SIZEOF
  463.         APTR    bah_Hook
  464.    LABEL        bahAddHook_SIZEOF
  465.  
  466. ** Remove a hook from the hook-notification list.
  467. BASE_REMHOOK    EQU     BGUI_MB+53
  468.  
  469. ** BGUI_MB+54 until BGUI_MB+80 reserved.
  470.  
  471. ******************************************************************************
  472. **
  473. **      "groupclass" - BOOPSI group gadget.
  474. **
  475. **      This class is the actual bgui.library layout engine. It will layout
  476. **      all members in a specific area. Two group types are available,
  477. **      horizontal and vertical groups.
  478. **
  479. GROUP_Style             EQU     BGUI_TB+321     ; I----
  480. GROUP_Spacing           EQU     BGUI_TB+322     ; I----
  481. GROUP_HorizOffset       EQU     BGUI_TB+323     ; I----
  482. GROUP_VertOffset        EQU     BGUI_TB+324     ; I----
  483. GROUP_LeftOffset        EQU     BGUI_TB+325     ; I----
  484. GROUP_TopOffset         EQU     BGUI_TB+326     ; I----
  485. GROUP_RightOffset       EQU     BGUI_TB+327     ; I----
  486. GROUP_BottomOffset      EQU     BGUI_TB+328     ; I----
  487. GROUP_Member            EQU     BGUI_TB+329     ; I----
  488. GROUP_SpaceObject       EQU     BGUI_TB+330     ; I----
  489. GROUP_BackFill          EQU     BGUI_TB+331     ; I----
  490. GROUP_EqualWidth        EQU     BGUI_TB+332     ; I----
  491. GROUP_EqualHeight       EQU     BGUI_TB+333     ; I----
  492. GROUP_Inverted          EQU     BGUI_TB+334     ; I----
  493.  
  494. ** BGUI_TB+335 until BGUI_TB+380 reserved.
  495.  
  496. ** Object layout attributes. **
  497. LGO_FixWidth            EQU     BGUI_TB+381
  498. LGO_FixHeight           EQU     BGUI_TB+382
  499. LGO_Weight              EQU     BGUI_TB+383
  500. LGO_FixMinWidth         EQU     BGUI_TB+384
  501. LGO_FixMinHeight        EQU     BGUI_TB+385
  502. LGO_Align               EQU     BGUI_TB+386
  503. LGO_NoAlign             EQU     BGUI_TB+387                     ; V38
  504.  
  505. ** BGUI_TB+388 until BGUI_TB+400 reserved.
  506.  
  507. ** Default object weight. **
  508. DEFAULT_WEIGHT  EQU     50
  509.  
  510. ** Group styles. **
  511. GRSTYLE_HORIZONTAL      EQU     0
  512. GRSTYLE_VERTICAL        EQU     1
  513.  
  514. ** New methods. **
  515. GRM_ADDMEMBER   EQU     BGUI_MB+81
  516.  
  517. ** Add a member to the group. **
  518.    STRUCTURE    grmAddMember,MethodID_SIZEOF       ; GRM_ADDMEMBER
  519.         APTR    grma_Member                     ; Object to add.
  520.         ULONG   grma_Attr                       ; First of LGO attributes.
  521.    LABEL        grmAddMember_SIZEOF
  522.  
  523. GRM_REMMEMBER   EQU     BGUI_MB+82
  524.  
  525. ** Remove a member from the group. **
  526.    STRUCTURE    grmRemMember,MethodID_SIZEOF       ; GRM_REMMEMBER
  527.         APTR    grmr_Member                     ; Object to remove.
  528.    LABEL        grmRemMember_SIZEOF
  529.  
  530. GRM_DIMENSIONS  EQU     BGUI_MB+83
  531.  
  532. ** Ask an object it's dimensions information. **
  533.    STRUCTURE    grmDimensions,MethodID_SIZEOF      ; GRM_DIMENSIONS
  534.         APTR    grmd_GInfo                      ; Can be NULL!
  535.         APTR    grmd_RPort                      ; Ready for calculations.
  536.         APTR    grmd_MinSizeWidth               ; Storage for dimensions.
  537.         APTR    grmd_MinSizeHeight              ; -
  538.         ULONG   grmd_Flags                      ; See below.
  539.    LABEL        grmDimensions_SIZEOF
  540.  
  541. ** Flags **
  542. GDIMF_NO_FRAME          EQU     $0001   ; Don't take frame width/height
  543.                                         ; into consideration.
  544.  
  545. GRM_ADDSPACEMEMBER      EQU     BGUI_MB+84
  546.  
  547. ** Add a weight controlled spacing member. **
  548.    STRUCTURE    grmAddSpaceMember,MethodID_SIZEOF  ; GRM_ADDSPACEMEMBER
  549.         ULONG   grms_Weight                     ; Object weight.
  550.    LABEL        grmAddSpaceMember_SIZEOF
  551.  
  552. GRM_INSERTMEMBER        EQU     BGUI_MB+85
  553.  
  554.    STRUCTURE    grmInsertMember,MethodID_SIZEOF    ; GRM_INSERTMEMBER
  555.         APTR    grmi_Member                     ; Object to insert
  556.         APTR    grmi_Pred                       ; Insert after this member
  557.         ULONG   grmi_Attr                       ; First of LGO attributes
  558.    LABEL        grmiInsertMember_SIZEOF
  559.  
  560. ** BGUI_MB+86 until BGUI_MB+120 reserved.
  561.  
  562. ******************************************************************************
  563. **
  564. **      "buttonclass" - BOOPSI button gadget.
  565. **
  566. **      GadTools style button gadget.
  567. **
  568. **      GA_Selected has been made gettable (OM_GET) for toggle-select
  569. **      buttons. (ISGNU)
  570. **
  571. BUTTON_ScaleMinWidth    EQU     BGUI_TB+401     ; PRIVATE!
  572. BUTTON_ScaleMinHeight   EQU     BGUI_TB+402     ; PRIVATE!
  573. BUTTON_Image            EQU     BGUI_TB+403     ; I----
  574. BUTTON_SelectedImage    EQU     BGUI_TB+404     ; I----
  575.  
  576. ** BGUI_TB+405 until BGUI_TB+480 reserved.
  577. ** BGUI_MB+121 until BGUI_MB+160 reserved.
  578.  
  579. ******************************************************************************
  580. **
  581. **      "checkboxclass" - BOOPSI checkbox gadget.
  582. **
  583. **      GadTools style checkbox gadget.
  584. **
  585. **      GA_Selected has been made gettable (OM_GET). (ISGNU)
  586. **
  587.  
  588. ** BGUI_TB+481 until BGUI_TB+560 reserved.
  589. ** BGUI_MB+161 until BGUI_MB+200 reserved.
  590.  
  591. ******************************************************************************
  592. **
  593. **      "cycleclass" - BOOPSI cycle gadget.
  594. **
  595. **      GadTools style cycle gadget.
  596. **
  597. CYC_Labels      EQU     BGUI_TB+561     ; I----
  598. CYC_Active      EQU     BGUI_TB+562     ; ISGNU
  599. CYC_Popup       EQU     BGUI_TB+563     ; I----
  600.  
  601. ** BGUI_TB+564 until BGUI_TB+640 reserved.
  602. ** BGUI_MB+201 until BGUI_MB+240 reserved.
  603.  
  604. ******************************************************************************
  605. **
  606. **      "infoclass" - BOOPSI information gadget.
  607. **
  608. **      Text gadget which supports different colors, text styles and
  609. **      text positioning.
  610. **
  611. INFO_TextFormat         EQU     BGUI_TB+641     ; IS--U
  612. INFO_Args               EQU     BGUI_TB+642     ; IS--U
  613. INFO_MinLines           EQU     BGUI_TB+643     ; I----
  614. INFO_FixTextWidth       EQU     BGUI_TB+644     ; I----
  615. INFO_HorizOffset        EQU     BGUI_TB+645     ; I----
  616. INFO_VertOffset         EQU     BGUI_TB+646     ; I----
  617.  
  618. ** Command sequences. **
  619. ISEQ_B  MACRO           ; Bold
  620.         dc.b    27,"b"
  621.         ENDM
  622. ISEQ_I  MACRO           ; Italics
  623.         dc.b    27,"i"
  624.         ENDM
  625. ISEQ_U  MACRO           ; Underlined
  626.         dc.b    27,"u"
  627.         ENDM
  628. ISEQ_N  MACRO           ; Normal
  629.         dc.b    27,"n"
  630.         ENDM
  631. ISEQ_C  MACRO           ; Centered
  632.         dc.b    27,"c"
  633.         ENDM
  634. ISEQ_R  MACRO           ; Right
  635.         dc.b    27,"r"
  636.         ENDM
  637. ISEQ_L  MACRO           ; Left
  638.         dc.b    27,"l"
  639.         ENDM
  640. ISEQ_TEXT       MACRO           ; TEXTPEN
  641.         dc.b    27,"d2"
  642.         ENDM
  643. ISEQ_SHINE      MACRO           ; SHINEPEN
  644.         dc.b    27,"d3"
  645.         ENDM
  646. ISEQ_SHADOW     MACRO           ; SHADOWPEN
  647.         dc.b    27,"d4"
  648.         ENDM
  649. ISEQ_FILL       MACRO           ; FILLPEN
  650.         dc.b    27,"d5"
  651.         ENDM
  652. ISEQ_FILLTEXT   MACRO           ; FILLTEXTPEN
  653.         dc.b    27,"d6"
  654.         ENDM
  655. ISEQ_HIGHLIGHT  MACRO           ; HIGHLIGHTPEN
  656.         dc.b    27,"d8"
  657.         ENDM
  658.  
  659. ** BGUI_TB+645 until BGUI_TB+720 reserved.
  660. ** BGUI_MB+241 until BGUI_MB+280 reserved.
  661.  
  662. ******************************************************************************
  663. **
  664. **      "listviewclass" - BOOPSI listview gadget.
  665. **
  666. **      GadTools style listview gadget.
  667. **
  668. LISTV_ResourceHook      EQU     BGUI_TB+721     ; I----
  669. LISTV_DisplayHook       EQU     BGUI_TB+722     ; I----
  670. LISTV_CompareHook       EQU     BGUI_TB+723     ; I----
  671. LISTV_Top               EQU     BGUI_TB+724     ; IS--U
  672. LISTV_ListFont          EQU     BGUI_TB+725     ; I-G--
  673. LISTV_ReadOnly          EQU     BGUI_TB+726     ; I----
  674. LISTV_MultiSelect       EQU     BGUI_TB+727     ; I----
  675. LISTV_EntryArray        EQU     BGUI_TB+728     ; I----
  676. LISTV_Select            EQU     BGUI_TB+729     ; -S--U
  677. LISTV_MakeVisible       EQU     BGUI_TB+730     ; -S--U
  678. LISTV_Entry             EQU     BGUI_TB+731     ; ---N-
  679. LISTV_SortEntryArray    EQU     BGUI_TB+732     ; I----
  680. LISTV_EntryNumber       EQU     BGUI_TB+733     ; ---N-
  681. LISTV_TitleHook         EQU     BGUI_TB+734     ; I----
  682. LISTV_LastClicked       EQU     BGUI_TB+735     ; --G--
  683. LISTV_ThinFrames        EQU     BGUI_TB+736     ; I----
  684. LISTV_LastClickedNum    EQU     BGUI_TB+737     ; I----           V38
  685. LISTV_NewPosition       EQU     BGUI_TB+738     ; ---N-           V38
  686. LISTV_NumEntries        EQU     BGUI_TB+739     ; --G--           V38
  687. LISTV_MinEntriesShown   EQU     BGUI_TB+740     ; I----           V38
  688.  
  689. ** BGUI_TB+741 until BGUI_TB+800 reserved.
  690.  
  691. **
  692. **      LISTV_Select magic numbers.
  693. **
  694. LISTV_Select_First      EQU     -1                              ; V38
  695. LISTV_Select_Last       EQU     -2                              ; V38
  696. LISTV_Select_Next       EQU     -3                              ; V38
  697. LISTV_Select_Previous   EQU     -4                              ; V38
  698. LISTV_Select_Top        EQU     -5                              ; V38
  699. LISTV_Select_Page_Up    EQU     -6                              ; V38
  700. LISTV_Select_Page_Down  EQU     -7                              ; V38
  701.  
  702. **
  703. **      The LISTV_ResourceHook is called as follows:
  704. **
  705. **              lea     hook,a0                 * 'STRUCTURE Hook' pointer
  706. **              lea     lv_object,a2            * Object pointer
  707. **              lea     lvResource,a1           * lvResource pointer
  708. **              jsr     hookFunc                * Call hook function
  709. **              tst.l   d0                      * return code in D0
  710. **
  711.    STRUCTURE    lvResource,0
  712.         UWORD   lvr_Command
  713.         APTR    lvr_Entry
  714.    LABEL        lvResource_SIZEOF
  715.  
  716. ** LISTV_ResourceHook commands. **
  717. LVRC_MAKE       EQU     1       ; Built the entry.
  718. LVRC_KILL       EQU     2       ; Kill the entry.
  719.  
  720. **
  721. **      The LISTV_DisplayHook and the LISTV_TitleHook are called as follows:
  722. **
  723. **              lea     hook,a0                 * 'STRUCTURE Hook' pointer
  724. **              lea     lv_object,a2            * Object pointer
  725. **              lea     lvRender,a1             * lvRender pointer
  726. **              jsr     hookFunc                * Call hook function
  727. **              tst.l   d0                      * return code in D0
  728. **
  729.    STRUCTURE    lvRender,0
  730.         APTR    lvren_RPort             ; RastPort to render in.
  731.         APTR    lvren_DrawInfo          ; All you need to render.
  732.         STRUCT  lvren_Bounds,ra_SIZEOF  ; Bounds to render in.
  733.         APTR    lvren_Entry             ; Entry to render.
  734.         UWORD   lvren_State             ; See below.
  735.         UWORD   lvren_Flags             ; None defined yet.
  736.    LABEL        lvRender_SIZEOF
  737.  
  738. ** Rendering states. **
  739. LVRS_NORMAL             EQU     0
  740. LVRS_SELECTED           EQU     1
  741. LVRS_NORMAL_DISABLED    EQU     2
  742. LVRS_SELECTED_DISABLED  EQU     3
  743.  
  744. **
  745. **      The LISTV_CompareHook is called as follows:
  746. **
  747. **              lea     hook,a0                 * 'STRUCTURE Hook' pointer
  748. **              lea     lv_object,a2            * Object pointer
  749. **              lea     lvCompare,a1            * lvCompare pointer
  750. **              jsr     hookFunc                * Call hook function
  751. **              tst.l   d0                      * return code in D0
  752. **
  753.    STRUCTURE    lvCompare,0
  754.         APTR    lvc_EntryA      ; First entry.
  755.         APTR    lvc_EntryB      ; Second entry.
  756.    LABEL        lvCompare_SIZEOF
  757.  
  758. ** New Methods. **
  759. LVM_ADDENTRIES  EQU     BGUI_MB+281
  760.  
  761. ** Add listview entries. **
  762.    STRUCTURE    lvmAddEntries,MethodID_SIZEOF      ; LVM_ADDENTRIES
  763.         APTR    lvma_GInfo                      ; GadgetInfo
  764.         APTR    lvma_Entries                    ; Entries to add.
  765.         ULONG   lvma_How                        ; How to add it.
  766.    LABEL        lvmAddEntries_SIZEOF
  767.  
  768. ** Where to add the entries. **
  769. LVAP_HEAD       EQU     1
  770. LVAP_TAIL       EQU     2
  771. LVAP_SORTED     EQU     3
  772.  
  773. LVM_ADDSINGLE   EQU     BGUI_MB+282
  774.  
  775. ** Add a single entry. **
  776.    STRUCTURE    lvmAddSingle,MethodID_SIZEOF       ; LVM_ADDSINGLE
  777.         APTR    lvms_GInfo                      ; GadgetInfo
  778.         APTR    lvms_Entry                      ; Entry to add.
  779.         ULONG   lvms_How                        ; See above.
  780.         ULONG   lvms_Flags                      ; See below.
  781.    LABEL        lvmAddSingle_SIZEOF
  782.  
  783. ** Flags. **
  784. LVASF_MAKEVISIBLE       EQU     $0001   ; Make entry visible.
  785. LVASF_SELECT            EQU     $0002   ; Select entry.
  786.  
  787. ** Clear the entire list. (Uses a lvmCommand structure as defined below.) **
  788. LVM_CLEAR       EQU     BGUI_MB+283
  789.  
  790. LVM_FIRSTENTRY  EQU     BGUI_MB+284
  791. LVM_LASTENTRY   EQU     BGUI_MB+285
  792. LVM_NEXTENTRY   EQU     BGUI_MB+286
  793. LVM_PREVENTRY   EQU     BGUI_MB+287
  794.  
  795. ** Get an entry. **
  796.    STRUCTURE    lvmGetEntry,MethodID_SIZEOF        ; Any of the above.
  797.         APTR    lvmg_Previous                   ; Previous entry.
  798.         ULONG   lvmg_Flags                      ; See below.
  799.    LABEL        lvmGetEntry_SIZEOF
  800.  
  801. LVGEF_SELECTED  EQU     $0001   ; Get selected entries.
  802.  
  803. LVM_REMENTRY    EQU     BGUI_MB+288
  804.  
  805. ** Remove an entry. **
  806.    STRUCTURE    lvmRemEntry,MethodID_SIZEOF        ; LVM_REMENTRY
  807.         APTR    lvmr_GInfo                      ; GadgetInfo
  808.         APTR    lvmr_Entry                      ; Entry to remove.
  809.    LABEL        lvmRemEntry_SIZEOF
  810.  
  811. LVM_REFRESH     EQU     BGUI_MB+289
  812. LVM_SORT        EQU     BGUI_MB+290
  813. LVM_LOCKLIST    EQU     BGUI_MB+291
  814. LVM_UNLOCKLIST  EQU     BGUI_MB+292
  815.  
  816. ** Refresh/Sort list. **
  817.    STRUCTURE    lvmCommand,MethodID_SIZEOF ; See above
  818.         APTR    lvmc_GInfo              ; GadgetInfo
  819.    LABEL        lvmCommand_SIZEOF
  820.  
  821. LVM_MOVE        EQU     BGUI_MB+293     ; V38
  822.  
  823. ** Move an entry in the list. **
  824.    STRUCTURE    lvmMove,MethodID_SIZEOF ; See above
  825.         APTR    lvmm_GInfo              ; GadgetInfo
  826.         APTR    lvmm_Entry              ; Entry to move or 0
  827.         ULONG   lvmm_Direction          ; Move direction
  828.    LABEL        lvmMove_SIZEOF
  829.  
  830. ** Move directions **
  831. LVMOVE_UP       EQU     0       ; Move entry up
  832. LVMOVE_DOWN     EQU     1       ; Move entry down
  833. LVMOVE_TOP      EQU     2       ; Move entry to the top
  834. LVMOVE_BOTTOM   EQU     3       ; Move entry to the bottom
  835.  
  836. ** BGUI_MB+294 until BGUI_MB+320 reserved.
  837.  
  838. ******************************************************************************
  839. **
  840. **      "progressclass" - BOOPSI progression gadget.
  841. **
  842. **      Progression indicator fuel guage.
  843. **
  844. PROGRESS_Min            EQU     BGUI_TB+801     ; IS---
  845. PROGRESS_Max            EQU     BGUI_TB+802     ; IS---
  846. PROGRESS_Done           EQU     BGUI_TB+803     ; ISGNU
  847. PROGRESS_Vertical       EQU     BGUI_TB+804     ; I----
  848. PROGRESS_Divisor        EQU     BGUI_TB+805     ; I----
  849.  
  850. ** BGUI_TB+806 until BGUI_TB+880 reserved.
  851. ** BGUI_MB+321 until BGUI_MB+360 reserved.
  852.  
  853. ******************************************************************************
  854. **
  855. **      "propclass" - BOOPSI proportional gadget.
  856. **
  857. **      GadTools style scroller gadget.
  858. **
  859. PGA_Arrows              EQU     BGUI_TB+881     ; I----
  860. PGA_ArrowSize           EQU     BGUI_TB+882     ; I----
  861. PGA_DontTarget          EQU     BGUI_TB+883     ; PRIVATE!
  862. PGA_ThinFrame           EQU     BGUI_TB+884     ; I----
  863. PGA_XenFrame            EQU     BGUI_TB+885     ; I----
  864.  
  865. ** BGUI_TB+886 until BGUI_TB+960 reserved.
  866. ** BGUI_MB+361 until BGUI_MB+400 reserved.
  867.  
  868. ******************************************************************************
  869. **
  870. **      "stringclass" - BOOPSI string gadget.
  871. **
  872. **      GadTools style string/integer gadget.
  873. **
  874. STRINGA_Tabbed          EQU     BGUI_TB+961     ; PRIVATE!
  875. STRINGA_ShiftTabbed     EQU     BGUI_TB+962     ; PRIVATE!
  876.  
  877. ** BGUI_TB+963 until BGUI_TB+1040 reserved.
  878. ** BGUI_MB+401 until BGUI_MB+440 reserved.
  879.  
  880. ******************************************************************************
  881. **
  882. **      RESERVED.
  883. **
  884. ** BGUI_TB+1041 until BGUI_TB+1120 reserved.
  885. ** BGUI_MB+441 until BGUI_MB+480 reserved.
  886.  
  887. ******************************************************************************
  888. **
  889. **      "pageclass" - BOOPSI paging gadget.
  890. **
  891. **      Gadget to handle pages of gadgets.
  892. **
  893. PAGE_Active             EQU     BGUI_TB+1121    ; ISGNU
  894. PAGE_Member             EQU     BGUI_TB+1122    ; I----
  895. PAGE_NoBufferRP         EQU     BGUI_TB+1123    ; I----
  896. PAGE_Inverted           EQU     BGUI_TB+1124    ; I----
  897.  
  898. ** BGUI_TB+1125 until BGUI_TB+1200 reserved.
  899. ** BGUI_MB+481 until BGUI_MB+520 reserved.
  900.  
  901. ******************************************************************************
  902. **
  903. **      "mxclass" - BOOPSI mx gadget.
  904. **
  905. **      GadTools style mx gadget.
  906. **
  907. MX_Labels               EQU     BGUI_TB+1201    ; I----
  908. MX_Active               EQU     BGUI_TB+1202    ; ISGNU
  909. MX_LabelPlace           EQU     BGUI_TB+1203    ; I----
  910. MX_DisableButton        EQU     BGUI_TB+1204    ; IS--U
  911. MX_EnableButton         EQU     BGUI_TB+1205    ; IS--U
  912. MX_TabsObject           EQU     BGUI_TB+1206    ; I----
  913. MX_TabsTextAttr         EQU     BGUI_TB+1207    ; I----
  914.  
  915. ** BGUI_TB+1208 until BGUI_TB+1280 reserved.
  916. ** BGUI_MB+521 until BGUI_MB+560 reserved.
  917.  
  918. ******************************************************************************
  919. **
  920. **      "sliderclass" - BOOPSI slider gadget.
  921. **
  922. **      GadTools style slider gadget.
  923. **
  924. SLIDER_Min              EQU     BGUI_TB+1281    ; I----
  925. SLIDER_Max              EQU     BGUI_TB+1282    ; I----
  926. SLIDER_Level            EQU     BGUI_TB+1283    ; ISGNU
  927. SLIDER_ThinFrame        EQU     BGUI_TB+1284    ; I----
  928. SLIDER_XenFrame         EQU     BGUI_TB+1285    ; I----
  929.  
  930. ** BGUI_TB+1286 until BGUI_TB+1360 reserved.
  931. ** BGUI_MB+561 until BGUI_MB+600 reserved.
  932.  
  933. ******************************************************************************
  934. **
  935. **      "indicatorclass" - BOOPSI indicator gadget.
  936. **
  937. **      Textual level indicator gadget.
  938. **
  939. INDIC_Min               EQU     BGUI_TB+1361    ; I----
  940. INDIC_Max               EQU     BGUI_TB+1362    ; I----
  941. INDIC_Level             EQU     BGUI_TB+1363    ; IS--U
  942. INDIC_FormatString      EQU     BGUI_TB+1364    ; I----
  943. INDIC_Justification     EQU     BGUI_TB+1365    ; I----
  944.  
  945. ** Justification **
  946. IDJ_LEFT                EQU     0
  947. IDJ_CENTER              EQU     1
  948. IDJ_RIGHT               EQU     2
  949.  
  950. ** BGUI_TB+1366 until BGUI_TB+1440 reserved.
  951.  
  952. ******************************************************************************
  953. **
  954. **      "externalclass" - BGUI external class interface.
  955. **
  956. EXT_Class               EQU     BGUI_TB+1441    ; I----
  957. EXT_ClassID             EQU     BGUI_TB+1442    ; I----
  958. EXT_MinWidth            EQU     BGUI_TB+1443    ; I----
  959. EXT_MinHeight           EQU     BGUI_TB+1444    ; I----
  960. EXT_TrackAttr           EQU     BGUI_TB+1445    ; I----
  961. EXT_Object              EQU     BGUI_TB+1446    ; --G--
  962. EXT_NoRebuild           EQU     BGUI_TB+1447    ; I----
  963.  
  964. ** BGUI_TB+1448 until BGUI_TB+1500 reserved.
  965.  
  966. *****************************************************************************
  967. **
  968. **      "separatorclass" - BOOPSI separator class.
  969. **
  970. SEP_Horiz               EQU     BGUI_TB+1501    * I----
  971. SEP_Title               EQU     BGUI_TB+1502    * I----
  972. SEP_Thin                EQU     BGUI_TB+1503    * I----
  973. SEP_Highlight           EQU     BGUI_TB+1504    * I----
  974. SEP_CenterTitle         EQU     BGUI_TB+1505    * I----
  975.  
  976. * BGUI_TB+1506 through BGUI_TB+1760 reserved.
  977.  
  978. ******************************************************************************
  979. **
  980. **      "windowclass" - BOOPSI window class.
  981. **
  982. **      This class creates and maintains an intuition window.
  983. **
  984. WINDOW_Position         EQU     BGUI_TB+1761    ; I----
  985. WINDOW_ScaleWidth       EQU     BGUI_TB+1762    ; I----
  986. WINDOW_ScaleHeight      EQU     BGUI_TB+1763    ; I----
  987. WINDOW_LockWidth        EQU     BGUI_TB+1764    ; I----
  988. WINDOW_LockHeight       EQU     BGUI_TB+1765    ; I----
  989. WINDOW_PosRelBox        EQU     BGUI_TB+1766    ; I----
  990. WINDOW_Bounds           EQU     BGUI_TB+1767    ; ISG--
  991. ** BGUI_TB+1768 until BGUI_TB+1770 reserved.
  992. WINDOW_DragBar          EQU     BGUI_TB+1771    ; I----
  993. WINDOW_SizeGadget       EQU     BGUI_TB+1772    ; I----
  994. WINDOW_CloseGadget      EQU     BGUI_TB+1773    ; I----
  995. WINDOW_DepthGadget      EQU     BGUI_TB+1774    ; I----
  996. WINDOW_SizeBottom       EQU     BGUI_TB+1775    ; I----
  997. WINDOW_SizeRight        EQU     BGUI_TB+1776    ; I----
  998. WINDOW_Activate         EQU     BGUI_TB+1777    ; I----
  999. WINDOW_RMBTrap          EQU     BGUI_TB+1778    ; I----
  1000. WINDOW_SmartRefresh     EQU     BGUI_TB+1779    ; I----
  1001. WINDOW_ReportMouse      EQU     BGUI_TB+1780    ; I----
  1002. ** BGUI_TB+1781 until BGUI_TB+1790 reserved.
  1003. WINDOW_IDCMP            EQU     BGUI_TB+1791    ; I----
  1004. WINDOW_SharedPort       EQU     BGUI_TB+1792    ; I----
  1005. WINDOW_Title            EQU     BGUI_TB+1793    ; IS--U
  1006. WINDOW_ScreenTitle      EQU     BGUI_TB+1794    ; IS--U
  1007. WINDOW_MenuStrip        EQU     BGUI_TB+1795    ; I-G--
  1008. WINDOW_MasterGroup      EQU     BGUI_TB+1796    ; I----
  1009. WINDOW_Screen           EQU     BGUI_TB+1797    ; I----
  1010. WINDOW_PubScreenName    EQU     BGUI_TB+1798    ; I----
  1011. WINDOW_UserPort         EQU     BGUI_TB+1799    ; --G--
  1012. WINDOW_SigMask          EQU     BGUI_TB+1800    ; --G--
  1013. WINDOW_IDCMPHook        EQU     BGUI_TB+1801    ; I----
  1014. WINDOW_VerifyHook       EQU     BGUI_TB+1802    ; I----
  1015. WINDOW_IDCMPHookBits    EQU     BGUI_TB+1803    ; I----
  1016. WINDOW_VerifyHookBits   EQU     BGUI_TB+1804    ; I----
  1017. WINDOW_Font             EQU     BGUI_TB+1805    ; I----
  1018. WINDOW_FallBackFont     EQU     BGUI_TB+1806    ; I----
  1019. WINDOW_HelpFile         EQU     BGUI_TB+1807    ; IS---
  1020. WINDOW_HelpNode         EQU     BGUI_TB+1808    ; IS---
  1021. WINDOW_HelpLine         EQU     BGUI_TB+1809    ; IS---
  1022. WINDOW_AppWindow        EQU     BGUI_TB+1810    ; I----
  1023. WINDOW_AppMask          EQU     BGUI_TB+1811    ; --G--
  1024. WINDOW_UniqueID         EQU     BGUI_TB+1812    ; I----
  1025. WINDOW_Window           EQU     BGUI_TB+1813    ; --G--
  1026. WINDOW_HelpText         EQU     BGUI_TB+1814    ; IS---
  1027. WINDOW_NoBufferRP       EQU     BGUI_TB+1815    ; I----
  1028. WINDOW_AutoAspect       EQU     BGUI_TB+1816    ; I----
  1029.  
  1030. ** BGUI_TB+1817 until BGUI_TB+1860 reserved.
  1031.  
  1032. ** Possible window positions. **
  1033. POS_CENTERSCREEN        EQU     0       ; Center on the screen
  1034. POS_CENTERMOUSE         EQU     1       ; Center under the mouse
  1035. POS_TOPLEFT             EQU     2       ; Top-left of the screen
  1036.  
  1037. ** New methods **
  1038.  
  1039. WM_OPEN         EQU     BGUI_MB+601     ; Open the window
  1040. WM_CLOSE        EQU     BGUI_MB+602     ; Close the window
  1041. WM_SLEEP        EQU     BGUI_MB+603     ; Put the window to sleep
  1042. WM_WAKEUP       EQU     BGUI_MB+604     ; Wake the window up
  1043. WM_HANDLEIDCMP  EQU     BGUI_MB+605     ; Call the IDCMP handler
  1044.  
  1045. ** Pre-defined WM_HANDLEIDCMP return codes. **
  1046. WMHI_CLOSEWINDOW        EQU     $00010000       ; The close gadget was clicked
  1047. WMHI_NOMORE             EQU     $00020000       ; No more messages
  1048. WMHI_INACTIVE           EQU     $00030000       ; The window was de-activated
  1049. WMHI_ACTIVE             EQU     $00040000       ; The window was activated
  1050. WMHI_IGNORE             EQU     $FFFFFFFF       ; Like it say's: ignore
  1051.  
  1052. WM_GADGETKEY            EQU     BGUI_MB+606
  1053.  
  1054. ** Add a hotkey to a gadget. **
  1055.    STRUCTURE    wmGadgetKey,MethodID_SIZEOF        ; WM_GADGETKEY
  1056.         APTR    wmgk_Requester                  ; When used in a requester
  1057.         APTR    wmgk_Object                     ; Object to activate
  1058.         APTR    wmgk_Key                        ; Key that triggers activ.
  1059.    LABEL        wmGadgetKey_SIZEOF
  1060.  
  1061. WM_KEYACTIVE            EQU     BGUI_MB+607
  1062. WM_KEYINPUT             EQU     BGUI_MB+608
  1063.  
  1064. ** Send with the WM_KEYACTIVE and WM_KEYINPUT methods. **
  1065.    STRUCTURE    wmKeyInput,MethodID_SIZEOF ; WM_KEYACTIVE/WM_KEYINPUT
  1066.         APTR    wmki_GInfo              ; GadgetInfo
  1067.         APTR    wmki_IEvent             ; Input event
  1068.         ULONG   wmki_ID                 ; Storage for the object ID
  1069.         APTR    wmki_Key                ; Key that triggered activation.
  1070.    LABEL        wmKeyInput_SIZEOF
  1071.  
  1072. ** Possible WM_KEYACTIVE and WM_KEYINPUT return codes. **
  1073. WMKF_MEACTIVE           EQU     0       ; Object went active.
  1074. WMKF_CANCEL             EQU     $0001   ; Key activation canceled.
  1075. WMKF_VERIFY             EQU     $0002   ; Key activation confirmed
  1076. WMKF_ACTIVATE           EQU     $0004   ; ActivateGadget() object
  1077.  
  1078. WM_KEYINACTIVE          EQU     BGUI_MB+609
  1079.  
  1080. ** De-activate a key session. **
  1081.    STRUCTURE    wmKeyInActive,MethodID_SIZEOF      ; WM_KEYINACTIVE
  1082.         APTR    wmkia_GInfo                     ; GadgetInfo
  1083.    LABEL        wmKeyInActive_SIZEOF
  1084.  
  1085. WM_DISABLEMENU          EQU     BGUI_MB+610
  1086. WM_CHECKITEM            EQU     BGUI_MB+611
  1087.  
  1088. ** Disable/Enable a menu or Set/Clear a checkit item. **
  1089.    STRUCTURE    wmMenuAction,MethodID_SIZEOF       ; WM_DISABLEMENU/WM_CHECKITEM
  1090.         ULONG   wmma_MenuID                     ; Menu it's ID
  1091.         ULONG   wmma_Set                        ; TRUE = set, FALSE = clear
  1092.    LABEL        wmMenuAction_SIZEOF
  1093.  
  1094. WM_MENUDISABLED         EQU     BGUI_MB+612
  1095. WM_ITEMCHECKED          EQU     BGUI_MB+613
  1096.  
  1097.    STRUCTURE    wmMenuQuery,MethodID_SIZEOF        ; WM_MENUDISABLED/WM_ITEMCHECKED
  1098.         ULONG   wmmq_MenuID                     ; Menu it's ID
  1099.    LABEL        wmMenuQuery_SIZEOF
  1100.  
  1101. WM_TABCYCLE_ORDER       EQU     BGUI_MB+614
  1102.  
  1103. ** Set the tab-cycling order. **
  1104.    STRUCTURE    wmTabCycleOrder,MethodID_SIZEOF    ; WM_TABCYCLE_ORDER
  1105.         APTR    wtco_Object1
  1106.         ; APTR  wtco_Object2
  1107.         ; ...
  1108.         ; NULL
  1109.    LABEL        wmTabCycleOrder_SIZEOF
  1110.  
  1111. ** Obtain the app message. **
  1112. WM_GETAPPMSG            EQU     BGUI_MB+615
  1113.  
  1114. WM_ADDUPDATE            EQU     BGUI_MB+616
  1115.  
  1116. ** Add object to the update notification list. **
  1117.    STRUCTURE    wmAddUpdate,MethodID_SIZEOF        ; WM_ADDUPDATE
  1118.         ULONG   wmau_SourceID                   ; ID of source object.
  1119.         APTR    wmau_Target                     ; Target object.
  1120.         APTR    wmau_MapList                    ; Attribute map-list.
  1121.    LABEL        wmAddUpdate_SIZEOF
  1122.  
  1123. WM_REPORT_ID            EQU     BGUI_MB+617     ; V38
  1124.  
  1125. ** Report a return code from a IDCMP/Verify hook. **
  1126.    STRUCTURE    wmReportID,MethodID_SIZEOF      ; WM_REPORT_ID
  1127.         ULONG   wmri_ID                         ; ID to report.
  1128.         ULONG   wmri_Flags                      ; See below.
  1129.    LABEL        wmReportID_SIZEOF
  1130.  
  1131. ** Flags. **
  1132. WMRIF_DOUBLE_CLICK      EQU     $0001           ; Simulate double-click.
  1133.  
  1134. ** BGUI_MB+618 until BGUI_MB+660 reserved.
  1135.  
  1136. ******************************************************************************
  1137. **
  1138. **      "commodityclass" - BOOPSI commodity class.
  1139. **
  1140. COMM_Name               EQU     BGUI_TB+1861    ; I----
  1141. COMM_Title              EQU     BGUI_TB+1862    ; I----
  1142. COMM_Description        EQU     BGUI_TB+1863    ; I----
  1143. COMM_Unique             EQU     BGUI_TB+1864    ; I----
  1144. COMM_Notify             EQU     BGUI_TB+1865    ; I----
  1145. COMM_ShowHide           EQU     BGUI_TB+1866    ; I----
  1146. COMM_Priority           EQU     BGUI_TB+1867    ; I----
  1147. COMM_SigMask            EQU     BGUI_TB+1868    ; --G--
  1148. COMM_ErrorCode          EQU     BGUI_TB+1869    ; --G--
  1149.  
  1150. ** BGUI_TB+1870 until BGUI_TB+1940 reserved.
  1151.  
  1152. ** New Methods. **
  1153.  
  1154. CM_ADDHOTKEY            EQU     BGUI_MB+661
  1155.  
  1156. ** Add a hot-key to the broker. **
  1157.    STRUCTURE    cmAddHotkey,MethodID_SIZEOF        ; CM_ADDHOTKEY
  1158.         APTR    cah_InputDescription            ; Key input description.
  1159.         ULONG   cah_KeyID                       ; Key command ID.
  1160.         ULONG   cah_Flags                       ; See below.
  1161.    LABEL        cmAddHotkey_SIZEOF
  1162.  
  1163. ** Flags. **
  1164. CAHF_DISABLED   EQU     $0001   ; The key is added but won't work.
  1165.  
  1166. CM_REMHOTKEY            EQU     BGUI_MB+662     ; Remove a key.
  1167. CM_DISABLEHOTKEY        EQU     BGUI_MB+663     ; Disable a key.
  1168. CM_ENABLEHOTKEY         EQU     BGUI_MB+664     ; Enable a key.
  1169.  
  1170. ** Do a key command. **
  1171.    STRUCTURE    cmDoKeyCommand,MethodID_SIZEOF     ; See above.
  1172.         ULONG   cdkc_KeyID                      ; ID of the key.
  1173.    LABEL        cmDoKeyCommand_SIZEOF
  1174.  
  1175. CM_ENABLEBROKER         EQU     BGUI_MB+665     ; Enable broker.
  1176. CM_DISABLEBROKER        EQU     BGUI_MB+666     ; Disable broker.
  1177.  
  1178. CM_MSGINFO              EQU     BGUI_MB+667
  1179.  
  1180. ** Obtain info from a CxMsg. **
  1181.    STRUCTURE    cmMsgInfo,MethodID_SIZEOF  ; CM_MSGINFO
  1182.         ULONG   cmi_InfoType            ; Storage for CxMsgType() result.
  1183.         ULONG   cmi_InfoID              ; Storage for CxMsgID() result.
  1184.         ULONG   cmi_InfoData            ; Storage for CxMsgData() result.
  1185.    LABEL        cmMsgInfo_SIZEOF
  1186.  
  1187. ** Possible CM_MSGINFO return codes. **
  1188. CMMI_NOMORE     EQU     $FFFFFFFF       ; No more messages.
  1189.  
  1190. ** BGUI_MB+668 until BGUI_MB+700 reserved.
  1191.  
  1192. **
  1193. **      CM_ADDHOTKEY error codes obtainable using
  1194. **      the COMM_ErrorCode attribute.
  1195. **
  1196. CMERR_OK                EQU     0       ; OK. No problems.
  1197. CMERR_NO_MEMORY         EQU     1       ; Out of memory.
  1198. CMERR_KEYID_IN_USE      EQU     2       ; Key ID already used.
  1199. CMERR_KEY_CREATION      EQU     3       ; Key creation failure.
  1200. CMERR_CXOBJERROR        EQU     4       ; CxObjError() reported failure.
  1201.  
  1202. ******************************************************************************
  1203. **
  1204. **      "filereqclass.c" - BOOPSI Asl filerequester class.
  1205. **
  1206. FRQ_Drawer              EQU     BGUI_TB+1941    ; --G--
  1207. FRQ_File                EQU     BGUI_TB+1942    ; --G--
  1208. FRQ_Pattern             EQU     BGUI_TB+1943    ; --G--
  1209. FRQ_Path                EQU     BGUI_TB+1944    ; --G--
  1210. FRQ_Left                EQU     BGUI_TB+1945    ; --G--
  1211. FRQ_Top                 EQU     BGUI_TB+1946    ; --G--
  1212. FRQ_Width               EQU     BGUI_TB+1947    ; --G--
  1213. FRQ_Height              EQU     BGUI_TB+1948    ; --G--
  1214. **
  1215. **      In addition to the above defined attributes are all
  1216. **      ASL filerequester attributes ISG-U.
  1217. **
  1218.  
  1219. ** BGUI_TB+1949 until BGUI_TB+2020 reserved.
  1220.  
  1221. **
  1222. **      Error codes which the SetAttrs() and DoMethod()
  1223. **      call's can return.
  1224. **
  1225. FRQ_OK                  EQU     0       ; OK. No problems.
  1226. FRQ_CANCEL              EQU     1       ; The requester was cancelled.
  1227. FRQ_ERROR_NO_MEM        EQU     2       ; Out of memory.
  1228. FRQ_ERROR_NO_FREQ       EQU     3       ; Unable to allocate a requester.
  1229.  
  1230. ** New Methods **
  1231.  
  1232. FRM_DOREQUEST           EQU     BGUI_MB+701     ; Show Requester.
  1233.  
  1234. ** BGUI_MB+702 until BGUI_MB+740 reserved.
  1235.  
  1236.         ENDC    ; LIBRARIES_BGUI_I
  1237.